package com.fantastic.service.zjs;

import com.fantastic.model.pojo.zjs.Variety;
import com.fantastic.model.vo.zjs.VarietyVarietyTypeVo;
import com.fantastic.model.vo.zjs.VarietyVo;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
 * @author: rxx
 * @since: 2024/5/30 10:50
 * @description: 菜品信息service层接口
 */

public interface VarietyService {
    /**
     * 查询
     * 无条件时是查询全部的分页查询
     * 有条件时是查询条件的分页查询
     *
     * @param variety
     * @param sortStatus 排序状态  1为升序 (从小到大) 0为降序(从大到小)
     * @return
     */
    List<Variety> listVariety(Variety variety, Integer sortStatus);

    /**
     * 查询单个菜品信息
     *
     * @param varietyId
     * @return
     */
    Variety getVariety(Integer varietyId);

    /**
     * 查询菜品表和类型表关联信息
     *
     * @param varietyTypeId
     * @return
     */
    List<VarietyVo> listVarietyVo(Integer varietyTypeId);

    /**
     * 查询菜品类型、菜品、菜品规格类型、菜品具体规格
     * @return
     */
    List<VarietyVarietyTypeVo> listVarietyVarietySpecType();

    /**
     * 添加菜品
     * @param varietyFile
     * @param variety
     */
    Integer insertVariety(MultipartFile varietyFile, Variety variety);

    /**
     * 修改菜品信息
     * @param varietyFile
     * @param variety
     */
    Integer updateVariety(MultipartFile varietyFile,Variety variety);

    /**
     * 删除菜品信息
     *
     * @param varietyId
     */
    Integer deleteVariety(Integer varietyId);
}
